System and method for presenting targeted content

ABSTRACT

A method and system for presenting targeted content to users over the internet is provided. The method includes enabling a user to sign into a website. An identifier is generated for the user, if the user is signing into the website for the first time. Information corresponding to the user is mined and the information is linked to the user. Further, verification is made to determine whether the generated identifier matches with existing identifiers. If the generated identifier matches with an existing identifier, then existing information corresponding to the matched identifier is linked to the user. Targeted content is presented to the user by processing at least the information linked to the user.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is a continuation application under 35 U.S.C. §120 of the U.S. Non-provisional patent application Ser. No. 15/245,208,filed on Aug. 24, 2016, which is further a continuation applicationunder 35 U.S.C. § 120 of the U.S. Non-provisional patent applicationSer. No. 13/089,772, filed on Apr. 19, 2011 and claiming the benefitunder 35 U.S.C. § 119(e) of U.S. Provisional Application No. 61/400,663,filed on Aug. 2, 2010, the entire disclosures of both aforesaid priorapplications being incorporated herein by reference.

1. Field BACKGROUND

Embodiments relate generally to the field of presenting targeted contentto users of a website and, more particularly but not exclusively, topresenting targeted content to the users based on information aggregatedfrom one or more online social networking platforms.

2. Discussion of Related Field

It is a well-known fact that penetration of internet has increasedsubstantially, and continues to increase. With increased penetration ofthe internet, users have started using internet for a gamut of reasons.Internet is being used for conducting research that helps in takingdecisions, expressing views and opinions, and buying products andservices, among other reasons.

A large number of web portals enable users to buy goods and servicesonline. Some web portals allow users to only search or browse theirinventory online and facilitate buying of goods and services availablein their inventory. On the other hand, some web portals present targetedcontent, such as advertisements, recommendations or suggestions to auser on what goods or services the user may wish to buy.

One of the commonly adopted methodologies for presenting targetedcontent is collaborative filtering. Collaborative filtering is used withmachine learning algorithms to present targeted content to users of theweb portal. Amazon is one such web portal that appears to usecollaborative filtering to group users who have carried out similaractions, and provides recommendations thereafter. It has been oftenobserved that, sometimes, unrelated recommendations are presented to theuser, when recommendations are provided based on the group a userpertains to, which has been algorithmically determined by adoptingcollaborative filtering algorithm. Additionally, the instant approachmay not be ideal when a user is using the web portal for purchasinggifts for other persons. While purchasing gifts, the preference of theperson receiving the gift is of importance. However, the instantapproach does not appear to be designed to consider the preference ofthe person who will be receiving the gift into consideration forproviding recommendations to the user purchasing the gifts.

Another approach for presenting targeted content to the user is by usinginformation gathered from an online social networking platform, whichthe user might be using. A website, www.goodreads.com, is one suchexample that appears to recommend books to its users based on theinformation corresponding to the user that is gathered from an onlinesocial networking platform (www.facebook.com), which the user might beusing. In the instant approach, the user is allowed to log into the webportal using his online social networking authentication credentials.After the user provides his online social networking authenticationcredentials, the user is asked to provide access to information that maybe used to give recommendations. Once the user grants rights to accessthe information, the information is used to provide recommendation tothe user. It shall be noted that, in the instant approach, informationcorresponding to the user is gathered from only one social networkingplatform, which the user is using. However, it has been observed thatgenerally a single user socializes by using more than one online socialnetworking platform. For instance, a user may use LinkedIn Network tosocialize and increase acquaintances within his professional work. Thesame user may also use Facebook to interact and stay in touch with hisfriends. Additionally, the user may be using location based socialnetworking platforms, such as, Foursquare to meet his friends at a givenlocation. The interactions in each of these social networks are isolatedfrom each other and there are no clear ways to aggregate theinteractions of a user across social networks and share the informationto applications, which can leverage this information to enhance therelevance of targeted content presented to the user.

In light of the foregoing discussion, there is a need for a technique toimprove relevancy of the targeted content presented to users. Further,the technique shall enable aggregation of information corresponding tousers across online social networking platforms. Furthermore, thetechnique shall enable sharing of the aggregated information toapplications that can leverage the information to enhance the relevanceof the targeted content presented to the user.

SUMMARY

In one aspect, a method for presenting targeted content to users overthe internet is provided. The method includes enabling a user to signinto a website. An identifier is generated for the user, if the user issigning into the website for the first time. Information correspondingto the user is mined and the information is linked to the user. Further,verification is made to determine whether the generated identifiermatches with existing identifiers. If the generated identifier matcheswith an existing identifier, then existing information corresponding tothe matched identifier is linked to the user. Targeted content ispresented to the user by processing at least the information linked tothe user.

In another aspect, a method for presenting, to a user, recommendation ofgifts for the user's one or more friends over the internet is provided.The method includes, authenticating the user through an online socialnetworking platform and receiving selection from the user, wherein theselection comprises at least one friends of the user, present in theonline social networking platform. Thereafter, information correspondingto the friend is mined from the online social networking platform.Recommending corresponding to gifts for the friend is presented based onprocessing of at least the mined information.

In yet another aspect, a system for presenting targeted content to usersover the internet is provided. The system includes an authenticationmodule, a data aggregation module, an identifier generation module, adatabase and a targeted content selection module. The authenticationmodule is configured to enable a user to sign into a website. The dataaggregation module is configured to mine information corresponding tothe user. The identifier generation module is configured to generate anidentifier for the user, if the user is signing into the website for thefirst time, and verify whether the generated identifier matches withexisting identifiers.

The database is configured to store mined information corresponding tothe user, and link existing information corresponding to the matchedidentifier to the user, if the generated identifier matches with anexisting identifier. The targeted content selection module is configuredto present targeted content to the user by processing at least theinformation linked to the user.

BRIEF DESCRIPTION OF DRAWINGS

Embodiments are illustrated by way of example and not limitation in theFigures of the accompanying drawings, in which like references indicatesimilar elements and in which:

FIG. 1 is a block diagram illustrating a system 100 for presentingtargeted content to users, in accordance with an embodiment;

FIG. 2 is a flow chart illustrating a method for generating identifierfor a user, in accordance with an embodiment;

FIG. 3 is a flow chart illustrating a method for generating identifierswhen a user creates an account using an online social networkingplatform, in accordance with an embodiment;

FIG. 4 is a flow chart illustrating a method for determining whether anidentifier has already been created for a user whenever a new identifierhas to be created, in accordance with an embodiment; and

FIG. 5 is a flow chart illustrating a method for recommending gifts,which a user may wish to purchase for his friends, in accordance with anembodiment.

DETAILED DESCRIPTION

The following detailed description includes references to theaccompanying drawings, which form a part of the detailed description.The drawings show illustrations in accordance with example embodiments.These example embodiments, which are also referred to herein as“examples,” are described in enough detail to enable those skilled inthe art to practice the present subject matter. The embodiments can becombined, other embodiments can be utilized, or structural, logical, andelectrical changes can be made without departing from the scope of whatis claimed. The following detailed description is, therefore, not to betaken in a limiting sense, and the scope is defined by the appendedclaims and their equivalents.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one. In this document, the term“or” is used to refer to a nonexclusive “or” such that “A or B” includes“A but not B.” “B but not A,” and “A and B.” unless otherwise indicated.Furthermore, all publications, patents, and patent documents referred toin this document are incorporated by reference herein in their entirety,as though individually incorporated by reference. In the event ofinconsistent usages between this document and those documents soincorporated by reference, the usage in the incorporated reference(s)should be considered supplementary to that of this document; forirreconcilable inconsistencies, the usage in this document controls.

FIG. 1 is a block diagram illustrating a system 100 for presentingtargeted content to users, in accordance with an embodiment. System 100may enable presenting targeted content, over the internet. The targetedcontent presented to the users, for example, can be, presentingrecommendations corresponding to goods and services, which the users maywish to, buy or gift. Examples of goods and services can include, butare not limited to, gifts, books, concerts, restaurants, musicalcompositions, spa treatments, gadgets, clothing, pet accessories,jewelry and cosmetics. The targeted content presented to users, forexample, may include, but not limited to, advertisements, links to webpages and customized layout of the website the user is visiting.

A user may use his user terminal 110 to access a website in which thetargeted content is displayed to the user. The user terminal 110 can be,for example, a desktop computer, a laptop, a communication device, apersonal digital assistant or a programmable consumer electronicsdevice. The website, for example, can be an ecommerce website thatenables online buying of goods and services. Alternatively, the websitecan be a blog or a corporate website. On the other hand, the website canbe a platform that allows, for example, viewing of videos (Ex: YouTube),presentations (Ex: Slideshare), documents (Ex: Scribd) or lyrics (Ex:www.lyrics.com).

System 100 includes an authentication module 102, a data aggregationmodule 104, a database 106, an identifier generation module 107 and atargeted content selection module 108. The system 100 is configured tocommunicate with user terminals (Ex: User terminal 110) over acommunication network 116. In FIG. 1, only one user terminal 110 isillustrated to simplify understanding of the embodiment. The system 100is also configured to communicate over the communication network 116,with one or more social networking platforms. In FIG. 1 a first socialnetworking platform 112 and a second social networking platform 114 areillustrated.

System 100 may be coupled with one or more websites in which visitors(users) to the websites are presented with targeted content. Theauthentication module 102 may be configured to enable users of a websiteto sign-in to the website, either by allowing the users to create anaccount in the website or by allowing signing-in using an online socialnetworking platform (Ex: First social networking platform 112 or secondsocial networking platform 114). If a user signs-in using the onlinefirst social networking platform 112, then the data aggregation module104, which is configured to mine data corresponding to the user from thefirst social networking platform 112, extracts the data from the firstsocial networking platform 112 after receiving permission from the userfor such data mining. At least a part of the mined data is communicatedto the identifier generation module 107. The identifier generationmodule 107 is configured to generate identifiers, using the mined data,for the user and the user's contacts present in the first socialnetworking platform 112. Thereafter, the generated identifiers and themined data are communicated to the database 106. The database 106 isconfigured to receive data from the data aggregation module 104 and thegenerated identifiers, and store the same for retrieval when desired. Itshall be noted that the identifiers and the corresponding data arelinked. Additionally, the relationship between the identifiers createdfor various users (and their friends) may also be created and stored.The targeted content selection module 108 is configured to query thedatabase 106 and process the data provided by the database 106 to selectcontent that can be presented to the user.

As highlighted in the foregoing discussion, the identifier generationmodule 107 is configured to generate identifiers using the informationprovided by or information mined using permission granted by thevisitor. FIG. 2 is a flow chart illustrating a method for generatingidentifier for a user, in accordance with an embodiment. In thisembodiment, an identifier is generated for a user who creates an accountin the website. At step 202, the website is displayed in the web browserof the user terminal 110. If the user does not have an account in thewebsite, then he may create an account using an account creation webpage present in the website or by using an online social networkingplatform. In this embodiment, the user attempts to create an accountusing the account creation page. The account creation page may requestthe user to provide information that is required to create an account.For example, the information requested may include, first name, lastname, date of birth, location and email address. At step 204, theinformation required to create the account is received from the user.Thereafter, at least a part of the information that is required togenerate an identifier for the user is communicated to the identifiergeneration module 107, at step 206. The identifier, for example, may begenerated using information fields, such as, first name, last name, dateof birth, email address and location. It shall be noted that, from theinstant example, one of more information field may be added or removedto generate identifiers.

In the foregoing embodiment, the identifier was created usinginformation provided by the user while creating an account using theaccount creation page of the website. In another embodiment, identifierfor a user may be generated when the user creates an account using asocial networking platform. FIG. 3 is a flow chart illustrating a methodfor generating identifiers when a user creates an account using anonline social networking platform, in accordance with an embodiment. Asmentioned earlier, a user can create an account in the website using thewebsite's account creation page or by using an online social networkingplatform (Ex: Facebook). If the user chooses to create an account usingthe online social networking platform, then at step 302, authenticationwebpage of the social networking platform is displayed. The userprovides the authentications credentials, and upon successfulauthentication, a web page seeking permission to access datacorresponding to the user, from the social networking platform isdisplayed at step 304. The information sought to be accessed, forexample, may include, user's name, date of birth, location, emailaddress, likes, dislikes, groups, interests and feeds. Additionally,permission may be sought to access user's friends' name, date of birth,location, email address, likes, dislikes, groups, interests and feeds.If the user does not grant access, then information is not accessed. Onthe other hand, if the user grants access, then at step 310, data isextracted by the data aggregation module 104. At least a part of theuser's data, such as user's name, date of birth, location and sex, isused to generate identifier for the user at step 312 by the identifiergeneration module 107. Further, if the website configured in such a waythat generation of identifier for each of user's friends is desired,then at step 318, identifier for each of user's friends is generatedusing information that is accessible to the data aggregation module 104.

It may be noted that, as aforementioned, data aggregated from one ormore social networking platforms is used by the system 100 to presenttargeted content to the user. Hence, when a user creates an account inthe website using the website's account creation page, the system 100may have to identify whether data, extracted from a social networkingplatform, corresponding to the user is already present in the database106, and use the same to present targeted content. For example, User 1may create an account in the website using a social networking platform(Ex: Facebook), and provide access to data corresponding to User 2, whois in User 1's online social network. After gaining access to User 2'sdata, the system may generate an identifier for user 2, extract datacorresponding to User 2 and store the data corresponding to User 2 inthe database 106. In a scenario, wherein User 2 creates an account inthe website using the account creation page of the website, the systemmay generate an identifier for User 2. Thereafter, the system may verifywhether information, aggregated from a social networking platform,corresponding to User 2 is available in the database, and use the sameto present targeted content, if information is available.

In another scenario, when the system 100 gets access to datacorresponding to a user from more than one social networking platform,the system 100 may have to correlate the data from the social networkingplatforms to a single user. For example, system 100 may be coupled withtwo websites, Website 1 and Website 2, which allows users to createaccounts in their websites using a first social networking platform anda second social networking platform, respectively. A user, for example,User 1 may create an account using the first social networking platformin website 1. The system 100 creates an identifier for User 1, when User1 creates an account using the first social networking platform inwebsite 1. Additionally, User 1 may create an account using the secondsocial networking platform in website 2. System 100 creates anidentifier for User 1 upon creation of the account in website 2.Thereafter, the system 100 may compare the identifier generated andidentify that the identifier are generated for a unique person.Thereafter, the system 100 aggregates the information, corresponding toUser 1, extracted from both the social networking platforms, and use theinformation to present targeted content to User 1.

In light of the foregoing discussion, it may be noted that the system100 may be configured to determine whether an identifier has alreadybeen created for a user whenever the system 100 generates a newidentifier. FIG. 4 is a flow chart illustrating a method for determiningwhether an identifier has already been created for a user whenever a newidentifier has to be created, in accordance with an embodiment. At step402, the user provides information that is required to create an accountin the website. The information may be provided using an accountcreation page in the website or by using a social networking platform.Thereafter, at step 404, system 100 generates an identifier using theinformation received by the user. The generated identifier is comparedwith the existing identifiers at step 406. It shall be noted that, therecan be various scenarios, wherein an identifier for the user has alreadybeen created. For example, the instant user's online social networkingfriend might have created an account using the social networkingplatform. During creation of the account, system 100 might have accessedinformation corresponding to the instant user, and created an identifierfor the instant user. In another example, the instant user might havecreated an account in a first website, which is coupled to the system100, using a first social networking platform. Thereafter, the instantuser might be in the process of creating an account in a second website,which is coupled to the system 100, using a second social networkingplatform. In this scenario as well, the system might have created anidentifier for the instant user when he created an account in the firstwebsite. Hence, by comparing the newly generated identifier with theexisting identifier, the system 100 can identify unique users, and alsoaggregate information gathered from multiple social networking platformsto increase the relevancy of the targeted content presented to the user.

It shall be noted that, there can be various scenarios, wherein thenewly generated identifier and the existing identifiers do not matchcompletely. At step 410, the system checks whether there is a partialmatch between the newly generated identifier and the existingidentifiers. If there is a partial match, then at step 412, the system100 checks if the partial match is satisfactory to conclude that anidentifier for the instant user already exists. If the partial match issatisfactory, then the system correlates existing informationcorresponding to the instant user with the newly discovered informationto present targeted content to the instant user. However, if the matchis not satisfactory, then the system may conclude that a new unique userhas been identified.

In an embodiment, system 100 may be coupled to an ecommerce website thatenables purchasing of entities over the internet. The user accesses theecommerce website using a web browser provided in the user terminal 110.In an embodiment, the user is asked to authenticate himself. The usermay authenticate himself by communicating his authenticationcredentials, such as, user identification and password to theauthentication module 102. Alternatively, the user may authenticatehimself using his authentication credentials for a online socialnetworking platform, such as Facebook. To authenticate himself using thewebsite online social networking platform, the user can click on thesign-in button of the social networking platform and provide therequired authentication credentials in the sign-in web page of thesocial networking platform. The sign-in button of the social networkingplatform can be provided in the ecommerce website. In an embodiment, theauthentication module 102 can be configured to seek additionallypermission from the user. For example, when the user successfullyauthenticates himself by using the social networking platform, the useris requested to grant explicit permission to extract informationcorresponding to him. Further, permission may be sought to extractinformation corresponding to the user's friends. Furthermore, permissionmay be sought to carry out certain actions in the social networkingplatform, on behalf of the user.

If the user grants permission to the extract the requested information,then the data aggregation module 104 extract the information. The dataaggregation module 104 may be configured to extract data to which thepermission has been granted by the user.

In an embodiment, the data aggregation module 104 may extract, from thesocial networking platform, data corresponding to, user identification,date of birth, location of the user, email address, likes and dislikes.Additionally, the data aggregation module 104 may extract datacorresponding to friends, such as, friends' name, date of birth,location, likes and dislikes.

In an embodiment, information to be stored in the database 106 mayappear as:

 [user]   [[userid]: 1234  [username]: Jagdish Nomula   [dob]:01/01/1976   [location]: San Jose   [friends]    [friend ]    [[friendid]: 1324     [username]: Todd Johnson     [dob]:01/02/1974    [location]: San Francisco     [hobbies]: Hiking, Tennis     [likes]:Britney Spears, Barak Obama  [feed]: The next time Steve pulls out a newiPhone, you can be sure where everyone's eyes will be ....     ]     ....     ]]

For the above example, in an embodiment, a hash function may be used,which maps username, date of birth and location to a Byte Array. Aperson skilled in art would know that this functionality could bereplaced with other implementations. This function could be a one-wayhash function, to ensure that privacy of users is not compromised.

The identifier generation module 107 may be configured to generate anidentifier for the user. The identifier may be generated using name ofthe user, date of birth and location of the user, which are extractedfrom the social networking platform.

In an embodiment, the identifier may be generated using the name of theuser and the user's date of birth.

In another embodiment, the identifier may be generated using the user IDand the user's date of birth.

In yet another embodiment, the identifier may be generated using theuser ID, user's date of birth, email address and location of the user.

The identifier generated and the extracted data is sent to the database106. The database 106 is configured to store the identifier and thecorresponding data. The database 106 is configured to be queried, atleast by the targeted content selection module 108. The database 106 maybe configured to enable retrieval of data from the database 106 by thetargeted content selection 108 for further processing to generaterecommendations of entities, which will be presented to the user. Itshall be noted that the information used for processing is mapped to thecontext in which targeted content is being presented to the user.

In an embodiment, system 100 may be configured to recommend gifts tousers, which the users may buy for his friend(s). FIG. 5 is a flow chartillustrating a method for recommending gifts, which a user may wish topurchase for his friends in accordance with an embodiment. An ecommercewebsite may allow a user to purchase gifts for his friends. Such awebsite may be configured to present recommendations corresponding tothe gifts the user's friend or friends may like. In order to purchasegifts, the user accesses the website using a web browser. The websitemay allow the user to purchase gifts or present recommendations afterthe user successfully authenticates himself. At step 502, the userauthenticates himself using a social networking platform. A link to theauthentication page of the social networking platform may be provided inthe ecommerce website. After successful authentication, the user selectsone or more friends who are in his friend network in the online socialnetworking platform, for whom the user wishes to purchase gifts. To makeunderstanding convenient, we may assume that the user selects one friendfrom the social networking platform. The system 100 extracts informationcorresponding to the friend, and processes the information at step 506.Thereafter, based on the processing, system 100 presents recommendationscorresponding to the gifts the user's friend may like. In one embodimentof extracting application related information, a naive Bayes classifieris used to classify a person as a sports fanatic or tech savvy personand recommend him sports accessories or tech gadgets. In anotherembodiment, collaborative filtering algorithm is used to recommend giftsto used based on gifting/personality related keywords in social feed.

In an embodiment, after the user selects a friend to whom he wishes topurchase gift(s), the system may generate an identifier for the friend.Thereafter, the system 100 may verify if the generated identifiermatches (completely or partially as described earlier) with existingidentifiers. If the generated identifier does not match with theexisting identifier, the system 100 may conclude that a new user hasbeen identified. The system 100 extracts information corresponding tothe friend from the social networking platform. The information isprocessed by system 100 to present recommendations corresponding to thegifts the user's friend may like.

Alternatively, if the generated identifier for the friend matches withan existing identifier, then the system may use informationcorresponding to the friend, which may already exist in system 100, andmay extract any new information corresponding to the friend from thesocial networking platform, to process and present recommendations. Itshall be noted that information, corresponding to the friend, which mayhave been extracted from other social networking platforms, may exist inthe system. In this scenario, system 100 will be able to providerecommendation based on information, corresponding to the friend, whichhas been aggregated from more than one online social networkingplatform.

As an example, the system 100 may be configured with two websites, onethat sells goods and services, and other that facilitates purchasinggifts for friends. If the friend (from the above embodiments) has usedto first website to purchase an iPhone, the system may have generated anidentifier for the friend and aggregated information about the friend,including the activity of purchasing of the iPhone. Thereafter, when theuser (from the above embodiments) signs-in to the second website topurchase gifts for his friend, the system 100 may generate an identifierfor the friend. Thereafter, the system 100 realizes that an identifierhas already been created for the friend. Subsequently, system 100 usesinformation corresponding to the friend, such as, purchase of theiPhone, to provide recommendation. For example, the gift recommendationsmay include accessories for iPhone, such as, iPhone cases, car chargerand iPhone screen protector, which the user's friend may like, thereby,increasing the relevancy of the recommendations presented.

In another example of recommending gifts, system 100 may have access toinformation corresponding to the user's friend from more than one socialnetworking platform, such as Foursquare, which may provide informationcorresponding to the friend's location, and another social networkingplatform, such as Facebook, which may provide information, such aslikes, dislikes and interests, corresponding to the friend's. The systemcan use the information, aggregated from both the social networkingplatforms, corresponding to the friend, to provide gift recommendationsto the user. For example, the system may identifies that the user'sfriend is in London from one of the social networking platforms, and mayalso identify that the friend likes wine tasting, from the second socialnetworking platform. In light of these identifications, the system mayinclude wine tasting sessions and offers among the recommendation ofgifts provided to the user, who may purchase the gift for his friend,thereby enhancing the relevancy of the recommendations presented.

In an embodiment, user friend's information (feed information) iscombined with recommendation algorithms, such as, collaborativealgorithm, which can be used in the friend feed as additional attributesin estimating the relevance of results that are shown to the user.

In one of the embodiments, a friend feed is analyzed for keywords in anapplication context, which is used to refine the neighbor-hood scoresgiven by collaborative filtering/information retrieval algorithms. Theimportant keywords themselves can be extracted from a data storecombined with category information in the feed from the friend. Forexample, if the feed includes “Music: Britney Spears concert is great”,then a music recommendation application would add Britney Spears as oneof the liked artists in Music Entities Category, by doing a data-storelookup for important string matches in the feed, combined with sentimentanalysis. In an embodiment, important strings in the feed are extractedusing token weights, TFIDF (term frequency inverted document frequency)scores across social feed by eliminating stop words approach in oneembodiment. The sentiment analysis can be done by a Bayes classifier inone embodiment. In another embodiment, a SVM (support vector machines)classifier is used to get sentiment information about a given entity. Itis to be noted that a person skilled in the art can come up withdifferent ways of analyzing feed. One embodiment for instance can justuse look up in the data store for the whole, skip the token weights anduse a decision tree for sentiment analysis.

A person skilled in art would know that social feeds that are derived inan application can be used across other applications as we are storingthe feeds and users info in a data store.

We also need to note that, we are aggregating information about theuser's friend as well, from the feed in the data store, which can beused later when we need to present targeted content to the friend whenthe friend visits a website that is coupled to system 100.

In another embodiment, all the recommendation services leveraging socialnetwork feeds can be hosted in a single domain, in which case, thewebsite can lookup cookie values and provide recommendations withoutasking the user to login into social network.

In an embodiment, when a user visits a food recommendation site, theuser is asked to log into location networking sites such aswww.twitter.com or www.foursquare.com or www.google.com/latitude toretrieve his and his network's information. The response from the feedscan then be used to aggregate the information for each user in theresponse from the location based social network, using identifierapproach. In this embodiment, we have information about his location aswell as the user's personal interests, which can be used, for example,to recommend “Indian restaurants” in “San Jose”. The system 100 canpredict that the user likes Indian restaurant, based on his analysis of,for example, Facebook profile, and location as San Jose, from one of thelocation based social networks.

In an embodiment, the system 100 may present a user with targetedcontent based on information extracted, corresponding to the user, frommore than one social networking platforms. This may be made possible bycoupling the system 100 with more than one website that enables creationof account using distinct social networking platforms.

It shall be noted that, with time, system 100 may have access to variouscategories of information corresponding to several users. Using thisinformation, the system may generate a graph of users and, goods andservice, which users may be interested in. This graph may be used by thesystem to process and present targeted content.

The processes described above and illustrated in the drawings is shownas a sequence of steps, this was done solely for the sake ofillustration. Accordingly, it is contemplated that some steps may beadded, some steps may be omitted, the order of the steps may bere-arranged, and/or some steps may be performed simultaneously.

The example embodiments described herein may be implemented in anoperating environment comprising software installed on a computer, inhardware, or in a combination of software and hardware.

Although embodiments have been described with reference to specificexample embodiments, it will be evident that various modifications andchanges may be made to these embodiments without departing from thebroader spirit and scope of the system and method described herein.Accordingly, the specification and drawings are to be regarded in anillustrative rather than a restrictive sense.

Many alterations and modifications of the present invention will nodoubt become apparent to a person of ordinary skill in the art afterhaving read the foregoing description. It is to be understood that thephraseology or terminology employed herein is for the purpose ofdescription and not of limitation. It is to be understood that thedescription above contains many specifications, these should not beconstrued as limiting the scope of the invention but as merely providingillustrations of some of the personally preferred embodiments of thisinvention. Thus the scope of the invention should be determined by theappended claims and their legal equivalents rather than by the examplesgiven.

What is claimed is:
 1. A method, performed by a first backend computersystem comprising a plurality of modules including a first module, forproviding an entity of content targeting a specific user to the firstmodule operating a first website, the first backend computer systemhaving access to a database storing, for each user of a plurality ofusers, a respective user identifier used to identify the respective userand a respective set of user identification information identifying therespective user, the stored plurality of users including a first user,the database storing, for the first user, a first user identifier usedto identify the first user and a first set of user identificationinformation identifying the first user, the method comprising steps of:receiving, by the first backend computer system, from a second source ofuser information, a second set of identification information of thefirst user identifying the first user; matching, by the first backendcomputer system, the received second set of identification informationof the first user with the stored first set of user identificationinformation of the first user; acquiring, by the first backend computersystem, an entity of content targeting the first user using activitydata of the first user captured by the second source of userinformation, the activity data of the first user adapted to identifyprior activities of the first user captured by the second source of userinformation; and incorporating, by the first backend computer system,through the first module, the acquired entity of content targeting thefirst user into a content page of the first website displayable on auser terminal visiting the first website.
 2. The method of claim 1,wherein the acquiring of the entity of content targeting the first userusing the activity data of the first user captured by the second sourceof user information, comprises: receiving, by the first backend computersystem, from the second source of user information, a first set of datapackets derived using the activity data of the first user captured bysecond source of user information; and acquiring, by the first backendcomputer system, the entity of content targeting the first user usingthe received first set of data packets. using, one way hash of firstname, last name, date of birth, location and/or email address
 3. Themethod of claim 1, wherein the second source of user informationcomprises a second backend computer system operating a second website;and wherein the activity data of the first user is adapted to identifyprior activities which the first user conducted on the second website ascaptured by the second backend computer system. using, one way hash offirst name, last name, date of birth, location and/or email address 4.The method of claim 3, wherein the first backend computer systemcomprises the second backend computer system as a second moduleoperating the second website;
 5. The method of claim 3, wherein theactivity data of the first user captured by the second backend computersystem comprises purchase-related activity data of the first useridentifying prior purchase-related activities of the first user whichthe first user conducted on the second website.
 6. The method of claim5, wherein the purchase-related activity data of the first usercomprises purchase data of the first user identifying at least onemerchandise item which the first user previously purchased from thesecond website through visiting the second website.
 7. The method ofclaim 1, wherein the matching of the received second set ofidentification information of the first user with the stored first setof user identification information of the first user, comprises stepsof: acquiring, by the first backend computer system, a second useridentifier using the received second set of identification informationof the first user; checking, by the first backend computer system,whether the second user identifier satisfactorily matches with the firstuser identifier of the first user stored in the database; anddetermining, by the first backend computer system, that the receivedsecond set of identification information of the first user matches withthe stored first user identifier of the first user if the checkingoperation returns a positive result. using, one way hash of first name,last name, date of birth, location and/or email address
 8. The method ofclaim 7, wherein the second user identifier, as acquired by the firstbackend computer system, is included in the received second set ofidentification information of the first user.
 9. The method of claim 7,wherein the checking of whether the received second user identifiersatisfactorily matches with the stored first user identifier of thefirst user, comprises: deciding whether the received second useridentifier exactly or partially matches with the stored first useridentifier of the first user, using one way hashes for the comparison.if, by the deciding operation, the received second user identifier isfound to be an exact match with the stored first user identifier of thefirst user, then returning a positive result; otherwise if, by thedeciding operation, the received second user identifier is found to be apartial match with the stored first user identifier of the first user,and if the partial match is found to be satisfactory to link thereceived second user identifier with the partially matched first useridentifier of the first user, then returning a positive result; andotherwise returning a non-positive result.
 10. The method of claim 1,wherein the first user is a friend of a second user in an online socialnetwork of the second user and the second user is visiting the firstwebsite through a user terminal of the second user; and wherein theincorporating of the acquired entity of content targeting the first userinto a content page of the first website, comprises: receiving, by thefirst backend computer system, from a social networking platformimplementing the online social network of the second user, socialnetworking information of the first user indicating that the first useris a friend of the second user; forming, by the first backend computersystem, the content page such that the content page is a personalcontent page personal to the second user, and incorporating the acquiredentity of content targeting the first user into the personal contentpage; and sending, by the first backend computer system, the personalcontent page of the second user to the user terminal of the second userfor the personal content page of the second user to be presented on theuser terminal of the second user.
 11. The method of claim 10, whereinthe first website comprises a social networking platform implementingthe online social network of the second user.
 12. The method of claim10, wherein the entity of content targeting the first user, asincorporated into the personal page of the second user, comprises a setof one or more gift recommendations targeting the first user.
 13. Themethod of claim 1, wherein the entity of content targeting the firstuser, as acquired by the first backend computer system, comprises anadvertisement targeting the first user.
 14. The method of claim 1,wherein collaborative filtering is used to generate the entity ofcontent targeting the first user as acquired by the first backendcomputer system, and the employed collaborative filtering uses theactivity data of the first user captured by the second source of userinformation.